package com.ruoyi.ysgl.yssb.service;

import java.util.List;
import com.ruoyi.ysgl.yssb.domain.YsglYssb;
import com.ruoyi.ysgl.yssb.domain.YsglYssbFj;

/**
 * 预算申报Service接口
 *
 * @author huacai
 * @date 2024-08-08
 */
public interface IYsglYssbService
{
    /**
     * 查询预算申报
     *
     * @param yssbId 预算申报主键
     * @return 预算申报
     */
    public YsglYssb selectYsglYssbByYssbId(String yssbId);

    /**
     * 查询预算申报列表
     *
     * @param ysglYssb 预算申报
     * @return 预算申报集合
     */
    public List<YsglYssb> selectYsglYssbList(YsglYssb ysglYssb);

    /**
     * 新增预算申报
     *
     * @param ysglYssb 预算申报
     * @return 结果
     */
    public int insertYsglYssb(YsglYssb ysglYssb);

    /**
     * 批量新增预算申报
     *
     * @param ysglYssbs 预算申报List
     * @return 结果
     */
    public int batchInsertYsglYssb(List<YsglYssb> ysglYssbs);

    /**
     * 修改预算申报
     *
     * @param ysglYssb 预算申报
     * @return 结果
     */
    public int updateYsglYssb(YsglYssb ysglYssb);

    /**
     * 批量删除预算申报
     *
     * @param yssbIds 需要删除的预算申报主键集合
     * @return 结果
     */
    public int deleteYsglYssbByYssbIds(String[] yssbIds);

    /**
     * 删除预算申报信息
     *
     * @param yssbId 预算申报主键
     * @return 结果
     */
    public int deleteYsglYssbByYssbId(String yssbId);

    /**
     * 新增附件
     * @param ysglYssbFj
     * @return
     */
    int insertYssbFjByYssbId(YsglYssbFj ysglYssbFj);

    /**
     * 根据ID查询附件列表
     * @param ysglYssbFj
     * @return
     */
    List<YsglYssbFj> selectYssbFjList(YsglYssbFj ysglYssbFj);

    /**
     * 删除预算申报附件
     * @param fjIds
     * @return
     */
    int deleteYsglYssbFjByFjIds(Integer[] fjIds);
}
